package com.wms.system.domain.wcs;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
import java.util.UUID;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

@Data
@TableName("packing_list")
public class PackingList {
    @ApiModelProperty("主键ID")
    private String id;

    @ApiModelProperty("订单号")
    private String orderCode;

    @ApiModelProperty("制单人")
    private String userName;

    @ApiModelProperty("制单时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date packingDate;

    @ApiModelProperty("项目号")
    private String projectCode;

    @ApiModelProperty("发货时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date deliveryDate;

    @ApiModelProperty("发货地址")
    private String shipAddress;

    @ApiModelProperty("包装方式")
    private String mannerOfPacking;

    @ApiModelProperty("套包包装格式")
    private String mannerType;

    @ApiModelProperty("出库位置")
    private String targetStation;

    @ApiModelProperty("状态 1待执行，2准备出库，3正在拣货，4任务完成，5任务终止，6其它状态")
    private Integer status;

    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSSSSS")
    private LocalDateTime createdTime;

    @ApiModelProperty("更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSSSSS")
    private LocalDateTime updateTime;

    @ApiModelProperty("包货时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date shippingData;

    @ApiModelProperty("客户")
    private String customeName;

    @TableField(exist = false)
    @ApiModelProperty("是否缺件 0 是 1 否")
    private Integer isMissingParts;

    @TableField(exist = false)
    @ApiModelProperty("状态列表（用于筛选）")
    private List<Integer> statusList;

    @TableField(exist = false)
    @ApiModelProperty("制单时间开始（用于筛选）")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date packingDateStart;

    @TableField(exist = false)
    @ApiModelProperty("制单时间结束（用于筛选）")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date packingDateEnd;

    @TableField(exist = false)
    @ApiModelProperty("发货时间起始（用于筛选）")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date deliveryDateStart;

    @TableField(exist = false)
    @ApiModelProperty("发货时间结束（用于筛选）")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date deliveryDateEnd;

    @TableField(exist = false)
    private Long packingExcelTemplateId;

//    @TableField(exist = false)
//    private List<String> ids;

//    @TableField(exist = false)
//    private List<String> orderCodes;
}